#ifndef _NORMAL_BUTTON_H_
#define _NORMAL_BUTTON_H_

#include <gtk/gtk.h>
#include <string>
using namespace std;
#include <button.h>

namespace lgb_gtk
{

  gboolean ButtonPress(GtkWidget      *widget,
		       GdkEventButton *event,
		       gpointer        user_data);

  gboolean MouseOver(GtkWidget        *widget,
		     GdkEventCrossing *event,
		     gpointer          user_data);
  
  gboolean MouseOut(GtkWidget        *widget,
		    GdkEventCrossing *event,
		    gpointer          user_data);

  class NormalButton : public Button
  {
    GtkWidget *button;
    string labelStr;

    friend gboolean ButtonPress(GtkWidget      *widget,
				GdkEventButton *event,
				gpointer        user_data);

    friend gboolean MouseOver(GtkWidget        *widget,
			      GdkEventCrossing *event,
			      gpointer          user_data);

    friend gboolean MouseOut(GtkWidget        *widget,
			     GdkEventCrossing *event,
			     gpointer          user_data);
  public:
    NormalButton();
    ~NormalButton();

    virtual int SetLabel(string value);
    virtual int SetImages(string bg, string ig , string cg);
    virtual int Init();
  };

}

#endif
